export function generateString(data){
	 let resList = [];
	  
	     data.skuArray.forEach(sku => {
			 if(sku.rounds){
				 sku.rounds.forEach(round => {
				     round.items.forEach(item => {
				         // 如果是必选项（isDefault为N且sort为0），或者用户自定义的默认项（isDefault为Y）
						 // (item.isDefault === 'N' && item.sort === '0') || 
				         if (item.isDefault === 'Y') {
				             let itemName = item.itemSkuName;
				 	  
				             // 处理嵌套项（如皇堡的自定义配置）
				             if (item.rounds && item.rounds.length > 0) {
				                 let customizedItems = [];
				                 item.rounds.forEach(subRound => {
				                     subRound.items.forEach(subItem => {
				                         // 对于嵌套项，我们只关心isDefault为Y的项
				                         if (subItem.isDefault === 'Y') {
				                             customizedItems.push(subItem.itemSkuName);
				                         }
				                     });
				                 });
				                 itemName += `(${customizedItems.join('+')})`;
				             }
				 	  
				             // 处理带有属性的项（如可口可乐的加冰或不加冰）
				             if (item.productAttributes && item.productAttributes.length > 0) {
				                 let attribute = item.productAttributes.find(attr => attr.id === '1')?.items.find(attrItem => attrItem.isPush === '0')?.itemName;
				                 if (attribute) {
				                     itemName += `(${attribute})`;
				                 }
				             }
				 	  
				             // 将处理后的项添加到结果数组中
				             resList.push(itemName);
				         }
				     });
				 });
			 } else {
				resList.push(sku.skuName) 
			 }

	     });
	  
	     // 使用加号连接结果数组中的项，并返回最终的字符串
		 let resStr = resList.join(' + ')
	     let result = [];
	      let currentItem = '';
	      let inParentheses = false;
	      
	      for (let char of resStr) {
	          if (char === '(') {
	              inParentheses = true;
	              currentItem += char;
	          } else if (char === ')') {
	              inParentheses = false;
	              currentItem += char;
	          } else if (char === '+' && !inParentheses) {
	              result.push(currentItem.trim());
	              currentItem = '';
	          } else {
	              currentItem += char;
	          }
	      }
	      
	         // 添加最后一个项目（如果存在）
	      if (currentItem.trim() !== '') {
	          result.push(currentItem.trim());
	      }
	      console.log(result);
	      return result;
}

export function dksGenerateString(orderData){
	// 从 fixed_list 中提取所有项目的名称
	let fixedItems = orderData.fixed_list.map(item => item.name);
	
	// 从 option_list 中提取每个 round 下 condiment_item_list 中 is_default 为 true 的项目的名称
	let optionItems = [];
	orderData.option_list.forEach(option => {
		let defaultItem = option.condiment_item_list.find(item => item.is_default);
		if (defaultItem) {
			optionItems.push(defaultItem.name);
		}
	});
	// 将 fixedItems 和 optionItems 合并成一个字符串，用 '+' 连接
	let orderString = fixedItems.concat(optionItems).join('+');
	console.log(orderString);
	let result = [];
	let currentItem = '';
	let inParentheses = false;
	
	for (let char of orderString) {
		if (char === '(') {
			inParentheses = true;
			currentItem += char;
		} else if (char === ')') {
			inParentheses = false;
			currentItem += char;
		} else if (char === '+' && !inParentheses) {
			result.push(currentItem.trim());
			currentItem = '';
		} else {
			currentItem += char;
		}
	}
	
	// 添加最后一个项目（如果存在）
	if (currentItem.trim() !== '') {
		result.push(currentItem.trim());
	}
	console.log(result);
	return result;
}

export function kdjGenerateString(data){
	let orderString = '';
		  
	data.sortListItems.forEach(round => {
	  round.superComboItems.forEach(item => {
	    if (item.defaultSelected ==1) {
	      let baseItem = `${item.showNameCn}x${item.defaultCount}`;
		  
	      if (item.superCombo) {
	        let customItems = [];
	        item.superCombo.roundList.forEach(roundList => {
	          roundList.itemList.forEach(subItem => {
	            if (subItem.defaultSelected ==1 || (subItem.defaultSelected === undefined && subItem.minCount ==1)) {
	              customItems.push(subItem.showNameCn);
	            }
	          });
	        });
		  
	        if (customItems.length > 0) {
	          baseItem += `(${customItems.join('+')})`;
	        }
	      }
		  
	      if (orderString) {
	        orderString += '+';
	      }
	      orderString += baseItem;
	    }
	  });
	});
	//  console.log(orderString);
	// orderString = orderString.split('+')
	// console.log(orderString);
	// return orderString;
	let result = [];
	 let currentItem = '';
	 let inParentheses = false;
	 
	 for (let char of orderString) {
	     if (char === '(') {
	         inParentheses = true;
	         currentItem += char;
	     } else if (char === ')') {
	         inParentheses = false;
	         currentItem += char;
	     } else if (char === '+' && !inParentheses) {
	         result.push(currentItem.trim());
	         currentItem = '';
	     } else {
	         currentItem += char;
	     }
	 }
	 
	    // 添加最后一个项目（如果存在）
	 if (currentItem.trim() !== '') {
	     result.push(currentItem.trim());
	 }
	 console.log(result);
	 return result;
}